/**
 * Created by hhshi on 13-10-23.
 */

(function(win){
    win.Register = win.Register || {};

    /**
     * 文档加载完自动加载
     */
    $(document).ready(function(){
        // 用户名输入框失去焦点时，检测用户名是否存在
        $("#username").blur(function(){
            checkUserName(this);
        });

        // 注册按钮点击事件
        $("#register").click(submitRegister);

        // 注册取消按钮点击
        $("#cancel").click(function(){
            location.href = "/";
        });

        // 邮箱格式检查
        $("#email").blur(function(){
            checkEmail(this);
        });
    });

    /**
     * 提交注册方法
     */
    var submitRegister = function(){
        var newuser = checkPageInfo();
        if(newuser){
            $.ajax({
                url : '/submitRegister',
                type : 'post',
                data : newuser,
                success : function(result){
                    result = eval('(' + result + ')');
                    if(result.affectedRows == 1){
                        alert("注册成功！");
                        location.href = "/";
                    }else{
                        alert("注册失败！");
                    }
                },
                error : function(msg){
                    alert(msg);
                }
            });
        }
    };

    /**
     * 获取新用户注册信息
     */
    var checkPageInfo = function(){
        var newuser = {};
        newuser.name = $("#username").val().trim();
        newuser.password = $("#password").val().trim();
        newuser.email = $("#email").val().trim();
        newuser.address = $("#address").val().trim();

        var passwordagain = $("#passwordagain").val().trim();

        if(passwordagain != newuser.password){
            alert("密码与确认密码不一致！");
            return false;
        }
        if(newuser.name == ""){
            alert("用户名不能为空！");
            return false;
        }
        if(newuser.password == ""){
            alert("密码不能为空！");
            return false;
        }
        if(passwordagain == ""){
            alert("确认密码不能为空！");
            return false;
        }
        if(!checkEmail($("#eamil"))){
            alert("邮箱格式不正确！");
            return false;
        }
        return newuser;
    };

    /**
     * 检测用户名是否存在
     * @param obj 用户名输入框对象
     */
    var checkUserName = function(obj){
        var username = $(obj).val().trim();
        $.ajax({
            url : '/checkUserName',
            type : 'post',
            data : {name : username},
            success : function(result){
                if(result){
                    alert("该用户名可用！");
                }else{
                    alert("该用户名已存在！");
                }
            },
            error : function(msg){
                alert(msg);
            }
        });
    };

    /**
     * 检查邮箱格式
     * @param obj 邮箱输入框对象
     */
    var checkEmail = function(obj){
        var email = $(obj).val();
        var reg=/^[a-zA-Z]([a-zA-Z0-9]*[-_.]?[a-zA-Z0-9]+)+@([\w-]+\.)+[a-zA-Z]{2,}$/;
        if(!reg.test(email)){
            alert("邮箱格式不正确，请检查！");
            return false;
        }else{
            return true;
        }
    };
})(window);